Policy and Charging Rules Functions (PCRFs) are network nodes that perform policy and charging functions for a network. The PCRF function is invoked when another node establishes a policy and charging control session with the PCRF. For example, a Packet Data Network (PDN) Gateway (PGW) or other node may establish a session with a PCRF to either obtain policy and charging instructions for sessions involving a given end user or to authorize and set up policy and charging rules associated with a service.
A Diameter routing agent (DRA) assigns sessions to PCRFs and routes messages associated with a session to the PCRF to which the corresponding session has been assigned. Once a session is assigned to a PCRF, all traffic associated with that session is typically routed to the same PCRF until the session is terminated. However, it may be desirable to offload traffic and/or assign new sessions to alternate PCRFs to avoid overloading a PCRF.
Network operators typically deploy multiple PCRFs in a network and load share the assignment of new sessions among the PCRFs. New sessions can be assigned to PCRFs according to a preferential order, a prioritized list, a load balancing algorithm, a session utilization metric, or the like. At some point, one or more of the PCRFs may reach a maximum session capacity, for example, during a traffic burst, a traffic storm, situations where a large quantity of background tasks are running, etc., and reach an overloaded state. To date, all that is known about the load for any given PCRF is minimal information regarding whether or not its maximum session capacity has been met. This is problematic, as there is no indication regarding the actual degree of overload, for example, whether or not a given PCRF is only a little overloaded so that it may still be used to provide critical services, or whether the PCRF at its absolute maximum capacity so that all traffic to the overloaded PCRF should be eliminated.
Some existing systems fail to implement any type of overload control. Thus, the DRA continues to send traffic to an overloaded PCRF until the PCRF rejects the messages. The PCRF will reject any messages it cannot handle or throttle traffic for a particular Diameter application to the PCRF. This is problematic, as customer deployments with high transaction rates may lose access to critical services.
One conventional method of providing PCRF overload control includes piggybacking overload information within Diameter credit control answer (CCA) messages. This is problematic, as traffic to the overloaded PCRF cannot effectively be eliminated, as one or more Diameter Credit Control Requests (CCR) and subsequent Diameter CCA messages become necessary for the PCRF to indicate when it is no longer overloaded.
Accordingly, a need exists for methods, systems, and computer readable media for implementing intelligent PCRF overload control.